package com.bestcem.xm.user.service;

import com.bestcem.xm.common.core.domain.web.ServiceResult;
import com.bestcem.xm.user.service.dto.user.UserMfaRoleDTO;

import java.util.List;

/**
 * 用户登录安全验证关联角色相关服务
 *
 * @author panyun <yun.pan@idiaoyan.com>
 * @date 2022/6/13 10:32
 */
public interface UserMfaRoleService {
    /**
     * 根据查询条件获取用户登录安全验证关联角色列表
     *
     * @param userMfaRoleDTO 查询条件 orgId/roleId
     * @return com.bestcem.xm.util.ServiceResult<java.util.List < com.bestcem.xm.user.service.dto.user.UserMfaRoleDTO>>
     * @author panyun <yun.pan@idiaoyan.com>
     * @date 2022/6/13 14:35
     */
    ServiceResult<List<UserMfaRoleDTO>> listMfaRoleByCondition(UserMfaRoleDTO userMfaRoleDTO);

    /**
     * 新增
     *
     * @param userMfaRoleDTO 可选参数
     * @return com.bestcem.xm.util.ServiceResult<java.lang.Integer>
     * @author panyun <yun.pan@idiaoyan.com>
     * @date 2022/6/14 14:18
     */
    ServiceResult<Integer> insertSelective(UserMfaRoleDTO userMfaRoleDTO);

    /**
     * 批量删除
     *
     * @param orgId         租户id
     * @param deleteRoleIds 要删除的roleIdList
     * @return com.bestcem.xm.util.ServiceResult<java.lang.Integer>
     * @author panyun <yun.pan@idiaoyan.com>
     * @date 2022/6/13 20:17
     */
    ServiceResult<Integer> deleteByRoleIds(String orgId, List<String> deleteRoleIds);
}
